package com.woniu.entity.dto;

import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

/**
 * @Author pml
 * @Date 2025/6/14 16:01
 * @Description TODO
 * 登录请求DTO（数据传输对象）
 * 为什么不直接用AllUser实体类？
 * 1. 遵循单一职责原则：AllUser作为数据库实体，不应包含视图层专用的临时参数
 * 2. 避免实体类污染：防止业务字段与视图参数混合导致维护困难
 * 3. 安全性：可独立控制DTO的序列化/反序列化规则
 */
@Data  // Lombok注解，自动生成getter/setter，避免重复代码
@AllArgsConstructor
@NoArgsConstructor
public class LoginDTO {
    // 用户名（与前端表单字段对应）
    private String userName;

    // 密码（与前端表单字段对应）
    private String password;

    // 记住我选项（前端勾选时传递true，默认false）
    // 为什么用Boolean而不是boolean？允许前端不传递该字段时为null，后续可设默认值
    private Boolean rememberMe = false;
}